package com.codegeek.project.slope.service;

import com.codegeek.project.slope.domain.SlopePoint;

import java.util.List;
import java.util.Map;

/**
 * 监测点位Service接口
 *
 * @author codegeek
 * @date 2020-02-17
 */
public interface ISlopePointService
{
    /**
     * 查询监测点位
     *
     * @param pointId 监测点位ID
     * @return 监测点位
     */
    public SlopePoint selectSlopePointById(Long pointId);

    /**
     * 查询监测点位列表
     *
     * @param slopePoint 监测点位
     * @return 监测点位集合
     */
    public List<SlopePoint> selectSlopePointList(SlopePoint slopePoint);

    /**
     * 新增监测点位
     *
     * @param slopePoint 监测点位
     * @return 结果
     */
    public int insertSlopePoint(SlopePoint slopePoint);

    /**
     * 修改监测点位
     *
     * @param slopePoint 监测点位
     * @return 结果
     */
    public int updateSlopePoint(SlopePoint slopePoint);

    /**
     * 批量删除监测点位
     *
     * @param pointIds 需要删除的监测点位ID
     * @return 结果
     */
    public int deleteSlopePointByIds(Long[] pointIds);

    /**
     * 删除监测点位信息
     *
     * @param pointId 监测点位ID
     * @return 结果
     */
    public int deleteSlopePointById(Long pointId);

    /**
     * 修改状态是否禁用
     * @param slopePoint
     * @return
     */
    Integer changeStatus(SlopePoint slopePoint);

    /**
     * 检查点位名称是否重复
     * @param name
     * @return
     */
    public List<Map<String,Object>> checkPointName(String name);
}
